2ffd94b713b3f19f3e1992924af1bc94186b8519,community/src/main/java/org/neo4j/kernel/impl/transaction/xaframework/XaLogicalLog.java,XaLogicalLog,rotate,#,1280
Before Change
fileChannel.position( getFirstStartEntry( endPosition ) );
}
LogEntry entry;
Set<Integer> startEntriesWritten = new HashSet<Integer>();
while ((entry = LogIoUtils.readEntry( buffer, fileChannel, cf )) != null )
{
if ( xidIdentMap.get( entry.getIdentifier() ) != null )
{
if ( entry instanceof LogEntry.Start )
{
((LogEntry.Start) entry).setStartPosition( newLog.position() );
startEntriesWritten.add( entry.getIdentifier() );
}
if ( !startEntriesWritten.contains( entry.getIdentifier() ) )
{
throw new IOException( "Unable to rotate log since start entry for identifier[" +
entry.getIdentifier() + "] not written" );
}
LogBuffer newLogBuffer = new DirectLogBuffer( newLog, buffer );
LogIoUtils.writeLogEntry( entry, newLogBuffer );
After Change
{
if ( entry instanceof LogEntry.Start )
{
LogEntry.Start startEntry = (LogEntry.Start) entry;
startEntry.setStartPosition( newLog.position() );
// overwrite old start entry with new that has updated position
xidIdentMap.put( startEntry.getIdentifier(), startEntry );
// startEntriesWritten.add( entry.getIdentifier() );
}
// if ( !startEntriesWritten.contains( entry.getIdentifier() ) )